#ifndef __MAIN_VIEW_HPP__
#define __MAIN_VIEW_HPP__

#include <FL/Fl.H>
#include <FL/Fl_Window.H>

class Fl_Box;
class Fl_Menu_Bar;

namespace m3g_viewer
{
    class TreeView;
    class HelpView;
    class ObjectView;
    class M3gView;
/**
 * 
 */
class MainView : public Fl_Window
{
public:
    MainView ();
    virtual ~MainView ();
    
    //virtual int handle (int event);

    void handle_mouse_event (int event);

    void quit ();
    void show_tree_view   ();
    void show_object_view (void* data);
    void show_help_view   ();
    void open_file_dialog ();

    M3gView* get_m3g_view () const;

    M3gView*    m3g_view;
    ObjectView* object_view;
    TreeView*   tree_view;
    HelpView*   help_view;

};


}  // namespace m3g_viewer

#endif
